package com.company.ThreadDemo;

import java.util.ArrayList;
import java.util.List;

/**
 * 作者：13687
 * 日期：2017/6/4
 * 项目：ThreadPoolsDemo
 * 描述：多线程+多任务
 * 没个线程都有自己的任务互相不干扰
 * 线程是安全的
 */
public class ThreadDemo1 {
	public static void main(String[] args) throws Exception{
		List<Thread> threads = new ArrayList<Thread>();
		for(int i=1 ; i<101 ; i++){
			Thread thread = new Thread(new CountRunnable(),"Thread"+i);
			threads.add(thread);
			thread.start();
		}
		for(Thread t : threads){
			t.join();// 会阻塞当前线程
		}
		// 所有线程执行完后 执行该语句
		System.out.println("所有线程执行完毕！");

	}
	public static class CountRunnable implements Runnable{
		private int sum;
		@Override
		public void run() {
			for(int i=1 ; i<11 ; i++){
				sum = sum+i;
			}
			System.out.println(Thread.currentThread().getName()+"执行完毕 sum="+sum);
		}

	}
}
